#pragma once

#pragma managed

#include "USISlave.h"
#include "Forms/MainForm.h"

using namespace System;
using namespace System::Windows::Forms;
using namespace FlexminAPI;

namespace USI 
{

public ref class USIMaster : public IMaster
{
private:
	USISlave ^_slave;

public:

	virtual void Initialize(ISlave ^slave, IHost ^host) override
	{
		_slave = dynamic_cast<USISlave ^>(slave);
	}

	virtual Form ^GetUIForm() override
	{
		return gcnew MainForm(_slave);
	}

	USIMaster()
	{
	}

};

}
